Verifying a Concurrent Garbage Collector Using a Rely-Guarantee Methodology
نویسندگان
چکیده
Concurrent garbage collection algorithms are an emblematic challenge in the area of concurrent program verification. In this paper, we address this problem by proposing a mechanized proof methodology based on the popular RelyGuarantee (RG) proof technique. We design a specific compiler intermediate representation (IR) with strong type guarantees, dedicated support for abstract concurrent data structures, and high-level iterators on runtime internals. In addition, we define an RG program logic supporting an incremental proof methodology where annotations and invariants can be progressively enriched. We formalize the IR, the proof system, and prove the soundness of the methodology in the Coq proof assistant. Equipped with this IR, we prove a fully concurrent garbage collector where mutators never have to wait for the collector.
منابع مشابه
A Real-Time Garbage Collector for Embedded Applications in CLI
We are working on scheduling of garbage collector as a concurrent thread for time-constrained applications in Common Language Infrastructure (CLI). We have implemented an incremental garbage collector with fine-grained write barrier in MONO, an opensource implementation of CLI. Our collector is based on existing conservative garbage collector of Boehm et al. By conducting benchmarking experim...
متن کاملA Study of Lock-Free Based Concurrent Garbage Collectors for Multicore Platform
Concurrent garbage collectors (CGC) have recently obtained extensive concern on multicore platform. Excellent designed CGC can improve the efficiency of runtime systems by exploring the full potential processing resources of multicore computers. Two major performance critical components for designing CGC are studied in this paper, stack scanning and heap compaction. Since the lock-based algorit...
متن کاملParMarkSplit: A Parallel Mark-Split Garbage Collector Based on a Lock-Free Skip-List
This brief announcement provides a high level overview of a parallel mark-split garbage collector. Our parallel design introduces and makes use of an efficient concurrency control mechanism based on a lock-free skip-list design for handling the list of free memory intervals. We have implemented the parallel mark-split garbage collector in OpenJDK HotSpot as a parallel and concurrent garbage col...
متن کاملBrief Announcement: ParMarkSplit: A Parallel Mark-Split Garbage Collector Based on a Lock-Free Skip-List
This brief announcement provides a high level overview of a parallel mark-split garbage collector. Our parallel design introduces and makes use of an efficient concurrency control mechanism based on a lock-free skip-list design for handling the list of free memory intervals. We have implemented the parallel mark-split garbage collector in OpenJDK HotSpot as a parallel and concurrent garbage col...
متن کاملNonintrusive Cloning Garbage Collection with Stock Operating System Support
It is well accepted that Garbage Collection simpliies programming, promotes modularity, and reduces development eeort. However it is commonly believed that these advantages do not counteract the price that has to be paid: excesive overheads, possible long pause times, and the need of modifying existing code. Even though there exist publically available garbage collectors that can be used in exi...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2017